<?php
class SesionesController extends AppController {

	var $name = 'Sesiones';
	var $helpers=array('Access');
	
	function index() {
		$this->Sesione->recursive = 0;
		$sesiones = $this->paginate('Sesione');	
				
		$proyecto = $unidad = $cartilla = $modulo = $area = "";
		foreach ($sesiones as &$sesion):
	//	die(var_dump($sesion));
			$proyecto = $this->Sesione->Tema->Proyecto->read(null,$sesion['Tema']['proyecto_id']);
					
			$nombre=$proyecto['Proyecto']['nombre'];
			$sesion['proyecto']=$nombre;

			if($proyecto['Proyecto']['unidade_id']!=NULL){
				$unidad=$this->Sesione->Tema->Proyecto->Unidade->read('nombre',$proyecto['Proyecto']['unidade_id']);
				$unidad=$unidad['Unidade']['nombre'];
			}
			$sesion['unidad']=$unidad;
			
			if($proyecto['Proyecto']['area_id']!=NULL){
				$area=$this->Sesione->Tema->Proyecto->Area->read('nombre',$proyecto['Proyecto']['area_id']);
				$area=$area['Area']['nombre'];
				
			}
			$sesion['area']=$area;
			
			if($proyecto['Proyecto']['cartilla_id']!=NULL){
				$cartilla=$this->Sesione->Tema->Proyecto->Cartilla->read('nombre', $proyecto['Proyecto']['cartilla_id']);
				$cartilla = $cartilla['Cartilla']['nombre'];
				
			}
			$sesion['cartilla'] = $cartilla;
			
			if($proyecto['Proyecto']['modulo_id']!=NULL){
				$modulo=$this->Sesione->Tema->Proyecto->Modulo->read('nombre', $proyecto['Proyecto']['modulo_id']);
				$modulo=$modulo['Modulo']['nombre'];				
			}
			$sesion['modulo']=$modulo;
			$proyecto = $unidad = $cartilla = $modulo = $area = "";
		//	var_dump($tema);
	  endforeach;
	  //die();
		$this->set(compact('sesiones'));
  }
	function view($id = null) {
		if (!$id) {
			$this->Session->setFlash(__('Invalid sesione', true));
			$this->redirect(array('action' => 'index'));
		}
		$this->set('sesione', $this->Sesione->read(null, $id));
	}

	function add() {
		if (!empty($this->data)) {
			$this->Sesione->create();
			if ($this->Sesione->save($this->data)) {
				$this->Session->setFlash(__('La sesion ha sido guardada', true));
				$this->redirect(array('action' => 'index'));
			} else {
				$this->Session->setFlash(__('La sesion no puede ser guardada', true));
			}
		}
		$metodologias=$this->Sesione->Tema->Proyecto->Unidade->Metodologia->find('list', array('fields'=>array('Metodologia.id','Metodologia.nombre')));
		$temas = $this->Sesione->Tema->find('list',array('fields'=> array('Tema.id','Tema.nombre')));
		$this->set(compact('metodologias','temas'));	
	}

	function edit($id = null) {
		if (!$id && empty($this->data)) {
			$this->Session->setFlash(__('Invalid sesione', true));
			$this->redirect(array('action' => 'index'));
		}
		if (!empty($this->data)) {
			if ($this->Sesione->save($this->data)) {
				$this->Session->setFlash(__('La sesion ha sido actualizada', true));
				$this->redirect(array('action' => 'index'));
			} else {
				$this->Session->setFlash(__('The sesione could not be saved. Please, try again.', true));
			}
		}
		if (empty($this->data)) {
			$this->data = $this->Sesione->read(null, $id);
		}		
		//Unidad
	    $unidades = $this->Sesione->Tema->Proyecto->Unidade->find('list', array('fields'=>array('Unidade.id','Unidade.nombre')));	
		//Grados
		$grados=$this->Sesione->Tema->Proyecto->Unidade->Grado->find('list',array('fields'=>array('Grado.id','Grado.nombre')));
		//Metodologia
		$metodologias=$this->Sesione->Tema->Proyecto->Unidade->Metodologia->find('list', array('fields'=>array('Metodologia.id','Metodologia.nombre')));
		//Modulos
		$modulos=$this->Sesione->Tema->Proyecto->Unidade->Modulo->find('list',array('fields'=>array('Modulo.id','Modulo.nombre')));
		//Cartillas		
		$cartillas=$this->Sesione->Tema->Proyecto->Unidade->Cartilla->find('list',array('fields'=>array('Cartilla.id','Cartilla.nombre'))); 
		//Areas
		$areas=$this->Sesione->Tema->Proyecto->Unidade->Area->find('list',array('fields'=>array('Area.id','Area.nombre')));
		//Temas
		$temas = $this->Sesione->Tema->find('list',array('fields'=> array('Tema.id','Tema.nombre')));

		$this->set(compact('unidades','grados','metodologias','modulos','cartillas','areas','temas'));
	}
	function delete($id = null) {
		if (!$id) {
			$this->Session->setFlash(__('Invalid id for sesione', true));
			$this->redirect(array('action'=>'index'));
		}
		if ($this->Sesione->delete($id)) {
					$this->Session->setFlash(__('Sesione deleted', true));
			$this->redirect(array('action'=>'index'));
		}
		$this->Session->setFlash(__('Sesione was not deleted', true));
		$this->redirect(array('action' => 'index'));
	}
	
	
	function get_sesiones_tema($tema = null){
		if( $tema!=null){
			$sesiones = $this->Sesione->find("list", array("fields"=>array("Sesione.id", "Sesione.nombre"), 
															  "conditions"=>array("Sesione.tema_id"=>$tema)));
			$this->view = 'Json';
			$this->set(compact('sesiones'));
			$this->set('json', 'sesiones');
		}
	}
}